home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d20 / gmd_310.arc / GMD.DOC < prev    next >
Text File  |  1991-11-03  |  32KB  |  742 lines

  1.  
  2.   ****************************************************************************
  3.   **                                                                        **
  4.   **   Note:  If you are upgrading from 3.0x be sure to read section 9.0.   **
  5.   **                                                                        **
  6.   ****************************************************************************
  7.  
  8.  
  9.  
  10.                      Grunged Message Detect (GMD) Utility
  11.                     ======================================
  12.  
  13.  
  14.  
  15.                                  Version 3.10
  16.                                 ==============
  17.  
  18.                                November 3, 1991
  19.                               ==================
  20.  
  21.  
  22.  
  23.                                Table of Contents
  24.                               ===================
  25.  
  26.         1.0     Warning!
  27.         2.0     General Description
  28.         3.0     Reasons to Run GMD
  29.         4.0     Definition of a "Grunged" Message
  30.         5.0     Quick Start
  31.         6.0     Operation
  32.            6.1     GMD
  33.            6.2     GMD-Sort
  34.            6.3     GMD-Rpt
  35.         7.0     GMD Configuration File
  36.            7.1     General Operation Section
  37.            7.2     Set Definitions Section
  38.            7.3     Default Message Standards Section
  39.            7.4     Exception Areas Sections
  40.            7.5     What You Should Configure
  41.         8.0     Runtime Considerations
  42.            8.1     DOS
  43.            8.2     OS/2
  44.            8.3     Other Operating Systems
  45.         9.0     Upgrade Notes
  46.        10.0     Licensing Restrictions
  47.        11.0     Credits
  48.        12.0     History of Changes
  49.  
  50.  
  51.  
  52.     1.0  Warning!
  53.     =============
  54.  
  55.         GMD is a very powerful program.  Used properly, GMD can detect
  56.         many types of grunged messages and some types of duplicate
  57.         messages.
  58.  
  59.         Used improperly, GMD is capable of deleting valid echo mail,
  60.         generating false warning messages, and violating Policy in
  61.         general.  Thus you should be very careful in setting it up and
  62.         in using it.  If you haven't read and understood FTS-0001 and
  63.         FTS-0004 then you should not attempt to configure or use GMD.
  64.  
  65.         To protect you, me and the rest of the Net, GMD will not delete
  66.         an echo mail message without trying to send an information
  67.         message to the feed who sent you the packet with the bad
  68.         message.
  69.  
  70.         Until you are sure you have your configuration correct, you
  71.         should use GMD in the test mode by using the "-t" command line
  72.         switch.
  73.  
  74.  
  75.  
  76.     2.0  General Description
  77.     ========================
  78.  
  79.         GMD's main purpose is to detect grunged messages.  In the
  80.         process of doing this, GMD is also able to identify certain
  81.         types of duplicate messages and non-standard messages.
  82.  
  83.         GMD operates directly on incoming packets, as described in
  84.         FTS-0001 and FTS-0004.
  85.  
  86.         GMD is very configurable.  Indeed, it depends entirely on a
  87.         configuration file to tell it what parameters to check the
  88.         messages for, and what to do when it finds a "bad" message.
  89.  
  90.         If you have any questions about GMD, or want to discuss any
  91.         problems you encountered while running GMD, please use the "GMD"
  92.         Echo, if possible.  "GMD" is a Backbone echo in Zone 1.  It is
  93.         the best place to get GMD information and help.
  94.  
  95.  
  96.  
  97.     3.0  Reasons to Run GMD
  98.     =======================
  99.  
  100.         Grunged messages can cause problems for some mail processing
  101.         programs.  For example, they can cause certain message
  102.         renumbering programs to lockup.  Since message renumbering is
  103.         usually a part of nightly processing, your system is exposed to
  104.         locking up while you are not around.  When you discover the
  105.         lockup, you are faced with the task of finding the grunged
  106.         message, deleting it and then completing the night's processing.
  107.         It is not uncommon for this recovery process to last several
  108.         hours at an inopportune time.
  109.  
  110.         Deleting grunged messages and duplicate messages spares your
  111.         users from seeing them and protects other boards that you feed
  112.         echo mail.
  113.  
  114.         Informing the feed who sent you the packet with the bad messages
  115.         allows him to correct the problem or to trace it back to it's
  116.         source.
  117.  
  118.         GMD is most effective when used close to the source of the
  119.         problem.  Thus we encourage using GMD at the Net level, in
  120.         addition to the Region and Zone levels.
  121.  
  122.  
  123.  
  124.     4.0  Definition of a "Grunged" Message
  125.     ======================================
  126.  
  127.         What is a "grunged" message?  This is a fuzzy question so it
  128.         gets a fuzzy answer.  A grunged message is a message which does
  129.         not reasonably conform to FTSC-0001 and FTSC-0004 standards.  It
  130.         turns out that such strict conformance is not desired because so
  131.         many messages fail to strictly conform to the standards (e.g.,
  132.         strict conformance to the standard requires two spaces between
  133.         the year and time in the date/time stamp field of the message -
  134.         it is fairly common to have only one space).  Thus strict
  135.         conformance would result in detecting messages otherwise
  136.         generally considered acceptable.
  137.  
  138.         One of the classic symptoms of a grunged message is non-ASCII
  139.         characters throughout the message.  Fortunately, this condition
  140.         is easy to detect in a message's control fields, especially the
  141.         date field which is somewhat rigidly defined.  Another form of
  142.         grunging, related to a message becoming an unwanted duplicate,
  143.         results in additional control fields being appended to the end
  144.         of the message.  Although not actually a grunged message,
  145.         sometimes old messages will get scanned out again, resulting in
  146.         duplicates which are too old for conventional dupe checking
  147.         techniques to detect.  GMD is capable of detecting these sorts
  148.         of problem messages.
  149.  
  150.  
  151.  
  152.     5.0  Quick Start
  153.     ================
  154.  
  155.         There is no "quick start" for GMD.  We feel that due to the
  156.         nature of the program you should read this file in its entirety
  157.         before running GMD.
  158.  
  159.  
  160.  
  161.     6.0  Operation
  162.     ==============
  163.  
  164.         6.1  GMD
  165.         --------
  166.  
  167.         GMD scans incoming packets.  It should be run after unpacking
  168.         incoming bundles, perhaps with a program like PolyXArc, but
  169.         before importing or tossing the mail.  GMD tests each message
  170.         for conformance with the criteria specified in the configuration
  171.         file.  When GMD detects a non-conforming message it can be set
  172.         to do nothing or to perform any combination of the following:
  173.  
  174.             1)  Generate an "information" net mail message to the feed
  175.                 who sent you the packet with the bad messages, informing
  176.                 him of the problem.
  177.  
  178.             2)  Delete the non-conforming message from the incoming
  179.                 packet.
  180.  
  181.             3)  Make a "save" copy of the non-conforming message for a
  182.                 local "bad" area.
  183.  
  184.         GMD only operates on the incoming packets.  The original
  185.         incoming packets maintain their time/date, even if messages have
  186.         been deleted from them.  Any messages that GMD generates are put
  187.         into new packets, also to be processed by your regular mail
  188.         program.  GMD does not work with your BBS's message base.  Thus
  189.         it does not care how your messages are actually stored on your
  190.         system, or if they are stored at all (passthrough).
  191.  
  192.         For security reasons, some mail processors will not accept the
  193.         messages which GMD generates since they appear to be coming
  194.         from that very system itself.  In this case GMD should be
  195.         configured to generate it's messages as if it is coming from a
  196.         Point off your system, rather than your system itself.  This
  197.         address is set by the System.xxx parameters in the Default
  198.         Message Standards Section of the configuration file.
  199.  
  200.         Whatever you set the System.xxx address to, you will need to
  201.         make sure that your mail processor will accept routed net mail
  202.         (the "information" messages) and echo mail (the "save" messages)
  203.         from this address.
  204.  
  205.         GMD puts its FTSC product code (A3) into the header of the
  206.         packets as it inspects or generates them.  GMD will not process
  207.         a packet which has its own product code.  Thus GMD will not
  208.         process the same incoming packet twice, or any packet which it
  209.         generated.
  210.  
  211.         GMD can be called with two optional command line parameters:
  212.  
  213.             -c  Specifies a configuration file other than the default
  214.                 of GMD.Cfg in the current directory, or the directory
  215.                 where GMD.Exe resides.
  216.  
  217.             -t  Specifies "test mode" operation.  Used for testing GMD's
  218.                 setup.  Inhibits the "i" and "d" commands.  Only the "s"
  219.                 command is functional.  This allows you to test your GMD
  220.                 setup without disturbing the mail flow or generating
  221.                 information messages.
  222.  
  223.         GMD should be configured to ignore incoming mail from other
  224.         systems which you know are also running GMD.  This helps to
  225.         avoid sending out redundant "information" messages.  When you
  226.         set up GMD you should inform all of your echo mail connections
  227.         that you are running it, and you should ask them to let you know
  228.         if they are, too.
  229.  
  230.         You should then list these addresses in the Ignore_Pkt_From
  231.         parameter in the General Operation Section of the configuration
  232.         file.  You should always list your echo mail feed, even if he
  233.         doesn't run GMD.  Please see section 7.1 for more information.
  234.  
  235.         We realize that this is not a foolproof scheme, although it
  236.         works for most cases.  To cover some of the other cases, GMD
  237.         also puts a "GMD: xxx" hidden line in any message which causes
  238.         it to send out an information message.  The "xxx" is the node
  239.         who sends out the information message and puts the GMD hidden
  240.         line in.  Other systems running GMD check for the GMD hidden
  241.         line before sending out information messages themselves.  The
  242.         presence of a GMD hidden line will not stop GMD from deleting a
  243.         message if this is called for.
  244.  
  245.         There is a limit to the number of information messages that GMD
  246.         will send out due to bad messages in any given packet.  This
  247.         helps in those cases that every message in a packet is bad.
  248.  
  249.  
  250.         6.2  GMD-Sort
  251.         -------------
  252.  
  253.         GMD generates a statistical database when it operates.  The
  254.         GMD-Sort program can be used to sort the database, prior to
  255.         generating reports from it with the GMD-Rpt program.  The
  256.         database is sorted and replaced.  This does not affect how GMD
  257.         itself operates.  It merely changes the order of the items in
  258.         the report.
  259.  
  260.         To use GMD-Sort, call it with the name of the statistical
  261.         database and optionally with one or more of the sort keys.  The
  262.         sort keys must be separated by at least one space.  Each may be
  263.         preceded by a "+" (default) or "-", which causes the sort to
  264.         happen in ascending or descending order for that key.  The
  265.         default sort order, if you don't use any of the keys, is "+zone
  266.         +net +node +point".
  267.  
  268.         The available sort keys are:
  269.  
  270.             zone      Zone number
  271.             net       Net number
  272.             node      Node number
  273.             point     Point number
  274.             length    Number of messages too long
  275.             to        Number of errors in To name field
  276.             from      Number of errors in From name field
  277.             subject   Number of errors in Subject field
  278.             datetime  Number of errors in Date/Time field
  279.             body      Number of errors in body of message
  280.             gated     Number of errors in Gated Origin line
  281.             origin    Number of errors in origin line
  282.             seenby    Number of errors in Seen-By line
  283.             path      Number of errors in Path line
  284.             endseq    Number of bad packet endings
  285.             info      Number of info messages sent
  286.             block     Number of statistically suppressed messages
  287.             delete    Number of messages deleted
  288.             uninf     Number of uninformed deletes
  289.             save      Number of messages saved
  290.  
  291.  
  292.         6.3  GMD-Rpt
  293.         ------------
  294.  
  295.         GMD generates a statistical database when it operates.  The
  296.         GMD-Rpt program can be used to generate a report from it.
  297.  
  298.         To use GMD-Rpt, call it with the name of the statistical
  299.         database.  The report will be sent to the console.  Redirection
  300.         can be used to send the report wherever you desire.  For
  301.         example, to send it to a file called GMD.Rpt:
  302.  
  303.             GMD-Rpt GMD.Dat >GMD.Rpt
  304.  
  305.         GMD-Rpt can be called with the optional "-s" switch.  This will
  306.         cause it to only produce the summary.
  307.  
  308.  
  309.  
  310.     7.0  GMD Configuration File
  311.     ===========================
  312.  
  313.         The configuration file contains all the parameters that control
  314.         GMD.  The GMD distribution file contains a sample configuration
  315.         file, called Sample.Cfg.  Blank lines and any part of a line
  316.         following a ";" are considered comments, and are ignored by GMD.
  317.  
  318.         The configuration file is divided into four major sections:
  319.  
  320.             General     General system information
  321.             Sets        Defines legal zones and character sets
  322.             Default     Defines the default settings for all echo areas
  323.             Area        Exceptions for groups of echo areas
  324.  
  325.         Each of these sections starts with appropriate keyword,
  326.         immediately followed by a ":".  Each section is made up of a
  327.         series of parameters. These parameters can be in any order.
  328.  
  329.         A parameter consists of a key word, a "=", and the parameter's
  330.         value(s).
  331.  
  332.         For example:
  333.  
  334.             Section_1:
  335.                 parameter_1 = 12
  336.                 parameter_2 = 34, "abc", y
  337.                 parameter_3 = "John Doe"
  338.  
  339.         Any string which contains embedded spaces or other punctuation,
  340.         must be quoted.  If in doubt - quote it, as it won't hurt.
  341.  
  342.         Any filespec can include a path in addition to the file's name.
  343.  
  344.         Most parameters test for a condition.  These parameters are
  345.         followed by an "ids" command(s) which tells GMD what to do if
  346.         the condition is not met.  The "ids" commands are:
  347.  
  348.             i   Inform the feed (via net mail) about the problem
  349.             d   Delete the bad message from the incoming packet
  350.             s   Save a copy of the bad message
  351.  
  352.         Any combination (including none if no action is desired) of the
  353.         "ids" commands may be used, except that if the "d" command is
  354.         used, then the "i" command will also be executed, even if you do
  355.         not specify it.  Some parameters only allow the "is" commands,
  356.         and not the "d" command.
  357.  
  358.         If a message fails more than one condition, then the action that
  359.         GMD takes is the "or" of the individual conditions' command
  360.         settings.  For example, if a message fails 3 condition tests,
  361.         yet only one of these conditions specifies that a information
  362.         message be sent, it will be sent.
  363.  
  364.         GMD permits include files anywhere a token (a string of
  365.         characters which GMD recognizes as a unit) can appear. The
  366.         syntax is @filespec (or "@filespec").  Include files can be
  367.         nested.
  368.  
  369.         Included files can be handy for separate, but similar,
  370.         configuration files. They can also be used to input lists of
  371.         various sorts (echo areas, names, search strings).
  372.  
  373.  
  374.         7.1  General Operation Section
  375.         ------------------------------
  376.  
  377.         This section contains general information about your system and
  378.         how GMD should operate.
  379.  
  380.         GMD logs both to the screen and to a file.  You can specify the
  381.         level of detail you want for each.  Each level includes the
  382.         information in the lower levels.
  383.  
  384.             LogLevel   Char      Information Logged
  385.             --------   ----     ---------------------
  386.                 0       !       Errors
  387.                 1       *       Summary
  388.                 2       +       Packets
  389.                 3       :       Bad Messages, brief
  390.                 4       #       Bad Messages, verbose
  391.                 5       -       Good Messages, brief
  392.  
  393.         GMD generates some summary statistics about the numbers and
  394.         types of non-conforming messages.  This information is in the
  395.         logs and can also be sent to you in a net mail message.
  396.  
  397.         The only disk directory that GMD needs to know about is the one
  398.         which contains the incoming packets.  This is usually your
  399.         inbound mail area.  GMD does not care what type of message base
  400.         your system uses.  Any messages that GMD itself generates will
  401.         be put in the form of incoming packets.  Thus your system treats
  402.         them like any other incoming mail.  This means that GMD also
  403.         does not care what type of outbound area(s) your system uses.
  404.  
  405.         When GMD "saves" a copy of a non-conforming message, it does
  406.         this by sending a copy of the message to a "bad" echo area which
  407.         you can specify.  This allows you to look at the messages later.
  408.  
  409.         GMD is capable of generating a database which contains
  410.         statistical information about the number and types of errors
  411.         encountered for each node.  This database has two uses.  It can
  412.         be used to limit the number of information messages sent because
  413.         of a given node.  Also it serves as input to the GMD-Sort and
  414.         GMD-Rpt reporting programs.  The database is cleared by deleting
  415.         the file.  A typical use would be to generate a weekly report,
  416.         then delete the database.
  417.  
  418.         To prevent your GMD from sending out information messages which
  419.         have already been sent out by another node running GMD, you can
  420.         instruct GMD to "ignore" packets coming in from certain Nodes.
  421.         In fact, GMD will continue to inspect these packets, but will
  422.         not generate any information messages or save copies, unless a
  423.         delete is also called for, in which case it processes the packet
  424.         normally.  This allows for the possibility of a message being
  425.         grunged after it has been processed by a node running GMD.  You
  426.         should always list your echo mail feed, even if he doesn't run
  427.         GMD.
  428.  
  429.  
  430.         7.2  Set Definitions Section
  431.         ----------------------------
  432.  
  433.         This section contains definitions of sets which are used in the
  434.         Default and Area Sections.  Sets are used to specify character
  435.         sets and zone numbers, for example.  You can name them whatever
  436.         you want to and you can have as many as you need.
  437.  
  438.         Sets make it possible to specify any combination of characters
  439.         or numbers which you wish to allow.  For example:  Just basic,
  440.         printing, ASCII characters.  Or you might want to allow some
  441.         (the alphabetic), but not all, of the hi-bit characters, too.
  442.  
  443.  
  444.         7.3  Default Message Standards Section
  445.         --------------------------------------
  446.  
  447.         This section contains the default settings used for the echo
  448.         areas.  These set the parameters which determine whether a
  449.         message conforms or not.  These settings can be overridden for
  450.         specific echoes by using the Area Section.
  451.  
  452.         Most of these parameters test conditions, hence use the "ids"
  453.         commands.  These commands determine what GMD does if a
  454.         non-conforming message is found.
  455.  
  456.         Many of the parameters allow you to relax or disable GMD's
  457.         conformance checking of various aspects of the message
  458.         specifications.  At present, there are so many non-conforming
  459.         messages that we felt this was necessary until the majority of
  460.         the responsible programs were fixed.
  461.  
  462.         Please see section 6.1 for a discussion about how to set the
  463.         System.xxx parameters.
  464.  
  465.         GMD uses two template files to build the information messages
  466.         that it sends.  One template file is used for messages which are
  467.         passed and another template file is used for messages which are
  468.         deleted.  There are a number of macros available which cause GMD
  469.         to insert the appropriate information about the offending
  470.         message.
  471.  
  472.         These are the macros which can be used in the template files
  473.         (note the trailing "."):
  474.  
  475.             &To.          The non-conforming message's "to" field
  476.             &From.        The non-conforming message's "from" field
  477.             &Subject.     The non-conforming message's "subject" field
  478.             &Date.        The non-conforming message's "date" field
  479.             &Flags.       The non-conforming message's flags
  480.             &Why.         The reason(s) that the message didn't conform
  481.             &Area.        The echo area that the non-conforming message
  482.                           was in
  483.             &Body.        The non-conforming message's body (up to the
  484.                           origin line)
  485.             &Routing.     The non-conforming message's control fields
  486.                           (from the origin line on)
  487.             &SysOp.       The name specified in System.SysOp
  488.  
  489.         Any other text in the template files is used in the information
  490.         message "as is".
  491.  
  492.         The GMD distribution file contains two sample template files.
  493.         Sample.Pas is an example of the Info_Message.Pass_File and
  494.         Sample.Del is an example of the Info_Message.Delete_File.
  495.  
  496.         Some parameters require sets to represent lists of acceptable
  497.         characters.  Minimum character sets are OR'ed with the character
  498.         sets that you use to prevent leaving out basic characters.
  499.  
  500.         The minimum character set is 32 (space) to 126 (~) for the
  501.         following parameters:  To.Alphabet, From.Alphabet,
  502.         Subject.Alphabet, Gated_Origin.Alphabet and Origin.Alphabet.
  503.  
  504.         In addition to 32 to 126, the minimum character set for the
  505.         Body.Alphabet parameter also includes 1 (control A), 9 (tab), 10
  506.         (line feed) and 141 (soft carriage return).
  507.  
  508.  
  509.         7.4  Exception Areas Sections
  510.         -----------------------------
  511.  
  512.         These are optional sections which contain exceptions to the
  513.         defaults listed in the Default Section.  Any setting listed
  514.         there can be overridden for specific echoes.  An echo mail area
  515.         can only be listed in one Exception Area Section.
  516.  
  517.         The only required parameter in an Area Section is "Echoes".  It
  518.         lists the echo mail areas for which the exceptions which follow
  519.         it apply.
  520.  
  521.         Typical uses of Exception Areas include:  A Node in more than
  522.         one Network who has to cope with different message standards, or
  523.         a Node or software developer who wants to do more stringent
  524.         testing on certain test areas.
  525.  
  526.  
  527.         7.5  What You Should Configure
  528.         ------------------------------
  529.  
  530.         It is very important to configure these parameters to match your
  531.         system:
  532.  
  533.             Mail.Inbound
  534.             Ignore_Pkt_From
  535.             System.Domain
  536.             System.Zone
  537.             System.Net
  538.             System.Node
  539.             System.Point
  540.             System.SysOp
  541.             System.Private_Net (if needed)
  542.  
  543.         These parameters may also be configured to suit your style of
  544.         operation:
  545.  
  546.             Log.Screen_Level
  547.             Log.Level
  548.             Log.File
  549.             Log.Error_Stats
  550.             Mail.Error_Stats
  551.             Mail.Bad_Area
  552.             Info_Message.Kill_Sent
  553.             Stat.File
  554.             Stat.Max_Nr_To_Node
  555.             Max_Nr_Per_Packet
  556.             Ignore_Pkt_To (if needed)
  557.             Ignore_Echo_List (if needed)
  558.             Info_Message.Pass_File
  559.             Info_Message.Delete_File
  560.             Info_Message.Pass_Subject
  561.             Info_Message.Delete_Subject
  562.  
  563.  
  564.  
  565.     8.0  Runtime Considerations
  566.     ===========================
  567.  
  568.         GMD returns the following errorlevels:
  569.  
  570.             255    Compiler run time error
  571.              3     Configuration file error
  572.              2     Bad message deleted, information message sent
  573.              1     Bad message passed, information message sent
  574.              0     No bad messages or information messages sent
  575.  
  576.         GMD has been assigned FTSC product code "A3".
  577.  
  578.  
  579.         8.1  DOS
  580.         --------
  581.  
  582.         Use the DOS version on 8086/8 CPUs.  The OS2 version runs a bit
  583.         faster, but it can only be used on 80286, and above, CPUs.
  584.  
  585.         GMD requires about 350K of free memory to run.  It is not
  586.         overlaid, and does not use EMS or any other type of memory.
  587.  
  588.         GMD running on a 25 MHz 80486, under DesqView, takes about 6
  589.         minutes to process 10,000 messages.  This is about one full
  590.         day's mail for the Zone 1 Backbone as of November 1991.
  591.  
  592.  
  593.         8.2  OS/2
  594.         ---------
  595.  
  596.         Use the OS2 version of the programs.  They are bound in the
  597.         dual mode, thus work in either protected or real mode.
  598.  
  599.  
  600.         8.3  Other Operating Systems
  601.         ----------------------------
  602.  
  603.         We would be happy to work with anyone who is interested in
  604.         porting GMD to other operating systems.  Contact the author.
  605.  
  606.  
  607.  
  608.     9.0  Upgrade Notes
  609.     ==================
  610.  
  611.         There are some changes between version 3.0x and 3.10 which you
  612.         need to take into account when upgrading.
  613.  
  614.         There were quite a few changes made to the configuration file.
  615.         We recommend that you start over with the enclosed sample
  616.         configuration file.
  617.  
  618.         The format of the statistical database has changed.  You should
  619.         delete the existing database before running the new GMD.
  620.  
  621.         GMD now returns more, and different, errorlevels than it used
  622.         to.  If you use the errorlevel, you will have adjust for the new
  623.         ones.
  624.  
  625.  
  626.  
  627.     10.0  Licensing Restrictions
  628.     ============================
  629.  
  630.         There are some simple restrictions associated with using the
  631.         programs.  You use these programs at your own risk.  The author
  632.         does not warrant that the programs work as described herein or
  633.         that they are even suitable for any particular purpose.  This
  634.         documentation is intended to describe how the programs work in
  635.         the author's environment.  The author does not claim that they
  636.         will work the same way in your environment or, if they do work,
  637.         that they will continue to work.  Furthermore, it is up to you
  638.         to decide if these programs are suitable for any particular
  639.         purpose on your system.
  640.  
  641.         The author freely releases the executable versions of these
  642.         programs to the public domain.  The author desires no fees for
  643.         the use of these programs and does not support these programs.
  644.  
  645.         These programs compile and link using Borland C++ and Microsoft
  646.         C 6.0 with no errors.  The source codes for GMD and related
  647.         programs are not generally available.  However, if you have a
  648.         legitimate need, and are willing to sign a non-disclosure
  649.         agreement, contact the author.
  650.  
  651.  
  652.  
  653.     11.0  Credits
  654.     =============
  655.  
  656.         David Troendle, 1:396/5, is the author of GMD and related
  657.         programs.  As time permits, he is willing to answer questions
  658.         about techniques used and how these program generally work.
  659.  
  660.         John Souvestre, 1:396/1, is responsible for the testing and
  661.         documenting of GMD and related programs.  He also serves as the
  662.         interface to the author, when David is busy otherwise.
  663.  
  664.         We would like to thank the many people who helped in one way or
  665.         another with GMD's development.  Thanks to the following people
  666.         who supplied helpful coding ideas or actual code:
  667.  
  668.             Chris Irwin
  669.             Jeffrey Nonken
  670.             George Peace
  671.  
  672.         Thanks to the beta test team, past and present (*):
  673.  
  674.             Steve Ahola                 Dean Lachan *
  675.             Martin Belcke *             Paul Marwick *
  676.             Bruce Berna *               David Nugent *
  677.             Bruce Bodger *              Roscoe Primrose *
  678.             Bill Bolton                 Mike Ratledge
  679.             Rod Bowman *                Bob Rakov *
  680.             Larry Carter *              Bob Satti *
  681.             Tim Carter *                Robert Soubie *
  682.             Steve Cross *               Graham Stair *
  683.             Tony Davis *                Mort Sternheim *
  684.             Fabian Gordon *             Roy Timberman *
  685.             Jim Greely *                John Valentyn *
  686.             Miles Hoover *              Tony Wagner *
  687.             Mark Howard *               Adrian Walker *
  688.             Dave James *                Matt Whelan *
  689.             John Johnson *              Ken Wilson
  690.             Felix Kasza                 John Woodward *
  691.  
  692.         Thanks to the GMD Echo Moderator, Steve Shapiro.
  693.  
  694.  
  695.  
  696.     12.0  History of Changes
  697.     ========================
  698.  
  699.         Version       Date       Changes, Modifications, Additions, etc.
  700.         -------     --------     ---------------------------------------
  701.          1.00       12/29/90     Original release
  702.  
  703.          1.01        2/16/91     Maintenance release, a few small fixes
  704.  
  705.          2.00        2/28/91     Added features mainly for Hub usage
  706.                                  - Uses echotoss log
  707.                                  - Uses and updates lastread pointer
  708.                                  - Optional passthrough area processing
  709.                                  - Configurable log detail level
  710.                                  - Returns an errorlevel
  711.  
  712.          3.00        9/12/91     Complete redesign and rewrite!
  713.                                  - Processes incoming packets directly
  714.                                  - Many new parameters
  715.                                  - Parameters now in configuration file
  716.                                  - Ability to send information messages
  717.                                  - Statistical database and reporting
  718.                                  - "Delete" command disabled for now
  719.  
  720.          3.01        9/17/91     Maintenance release
  721.                                  - Fixed Ignore_Pkt_From logic
  722.                                  - Added Seen_By.Node_Sort_OK
  723.  
  724.          3.10       11/03/91     Miscellaneous additions and changes
  725.                                  - "Delete" command enabled, but no
  726.                                    longer allowed in some places
  727.                                  - Fixed Ignore_Pkt_To logic
  728.                                  - Send information messages to feed,
  729.                                    not originator
  730.                                  - Added Max_Nr_Per_Packet
  731.                                  - Added GMD kludge line
  732.                                  - Improved log formats
  733.                                  - Improved report format
  734.                                  - Added more errorlevel returns
  735.                                  - Added Ignore_Echo_List
  736.                                  - Fixed a file handling problem which
  737.                                    caused trouble on certain LANs
  738.                                  - OS/2 version
  739.  
  740.  
  741.                                     - End -
  742.